********************************
** Do file for Descriptive Statistics
********************************

sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if id==16
sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if id!=16
sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if id==1|id==2|id==3|id==4|id==5|id==14|id==15|id==17|id==18 

sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if id==16 & year<2015
sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if id!=16 & year<2015
sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if (id==1|id==2|id==3|id==4|id==5|id==14|id==15|id==17|id==18) & year<2015 

sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if id==16 & year>=2015
sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if id!=16 & year>=2015
sum 전체인구 노인인구비율 영아인구비율 여성인구비율 GRDP 일인당GRDP 일반회계 보조사업 지방세수입 국고보조금 재정자립도 if (id==1|id==2|id==3|id==4|id==5|id==14|id==15|id==17|id==18) & year>=2015

* 자체수입(지방세수입+세외수입), 자주재원(교부세+교부금+보전금)


********************************
** Do file for Estimation
********************************
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
** 일반회계 **
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
synth 일반회계 일반회계(2001) 일반회계(2005) 일반회계(2009) 일반회계(2013) 일반회계(2001(1)2014) 일반회계(2008(1)2012)  일반회계(2012(1)2014) ///
재정자립도 일인당일반회계 일인당자주재원 일인당국고보조금 일인당GRDP 노인인구비율 영아인구비율 여성인구비율 , ///
trunit(16) trperiod(2015) fig keep(그림1.dta,replace)

use 그림1.dta, clear
replace _Y_treated =  _Y_treated/100000
replace _Y_synthetic = _Y_synthetic/100000

twoway (line _Y_treated _time, lcolor(black)) (line _Y_synthetic _time, lpattern(shortdash) lcolor(gray)), ///
graphregion(color(white)) ///
xline(2014, lpattern(dash) lcolor(blue)) ///
text(10000 2012.7 "Election", color(blue)) ///
xline(2015, lpattern(dash) lcolor(red)) ///
text(10000 2016 "Effect", color(red)) ///
xtitle("Year", margin(small)) ///
ytitle("General Accounting Budget", margin(small)) ///
ylabel(,format(%10.0f)) ///
legend(order(1 "Suncheon" 2 "Synthetic")) ///
note("Note: The unit of general accounting budget is a hundred million KRW.") 

 
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
** 보조사업 **
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
synth 보조사업 보조사업(2001) 보조사업(2005) 보조사업(2009) 보조사업(2013) 보조사업(2001(1)2014) 보조사업(2008(1)2012)  보조사업(2012(1)2014) ///
재정자립도 일인당일반회계 일인당자주재원 일인당국고보조금 일인당GRDP 노인인구비율 영아인구비율 여성인구비율 , ///
trunit(16) trperiod(2015) fig keep(그림1.dta,replace)

use 그림1.dta, clear
replace _Y_treated =  _Y_treated/100000
replace _Y_synthetic = _Y_synthetic/100000

twoway (line _Y_treated _time, lcolor(black)) (line _Y_synthetic _time, lpattern(shortdash) lcolor(gray)), ///
graphregion(color(white)) ///
xline(2014, lpattern(dash) lcolor(blue)) ///
text(5000 2012.7 "Election", color(blue)) ///
xline(2015, lpattern(dash) lcolor(red)) ///
text(5000 2016 "Effect", color(red)) ///
xtitle("Year", margin(small)) ///
ytitle("Government-subsidized Project Budget", margin(small)) ///
ylabel(,format(%10.0f)) ///
legend(order(1 "Suncheon" 2 "Synthetic")) ///
note("Note: The unit of government-subsidized project budget is a hundred million KRW.") 


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
** 지방세수입 **
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
synth 지방세수입 지방세수입(2001) 지방세수입(2005) 지방세수입(2009) 지방세수입(2013) 지방세수입(2001(1)2014) 지방세수입(2008(1)2012)  지방세수입(2012(1)2014) ///
재정자립도 일인당일반회계 일인당자주재원 일인당국고보조금 일인당GRDP 노인인구비율 영아인구비율 여성인구비율 , ///
trunit(16) trperiod(2015) fig keep(그림1.dta,replace)

use 그림1.dta, clear
replace _Y_treated =  _Y_treated/100000
replace _Y_synthetic = _Y_synthetic/100000

twoway (line _Y_treated _time, lcolor(black)) (line _Y_synthetic _time, lpattern(shortdash) lcolor(gray)), ///
graphregion(color(white)) ///
xline(2014, lpattern(dash) lcolor(blue)) ///
text(1400 2012.7 "Election", color(blue)) ///
xline(2015, lpattern(dash) lcolor(red)) ///
text(1400 2016 "Effect", color(red)) ///
xtitle("Year", margin(small)) ///
ytitle("Local Tax Revenue", margin(small)) ///
ylabel(,format(%10.0f)) ///
legend(order(1 "Suncheon" 2 "Synthetic")) ///
note("Note: The unit of local tax revenue is a hundred million KRW.") 


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
* Pretreatment Outcome Usage (predictor 변수 변경)
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
synth 일반회계 일반회계(2001) 일반회계(2005) 일반회계(2009) 일반회계(2013) ///
재정자립도 일인당일반회계 일인당자주재원 일인당국고보조금 일인당GRDP 노인인구비율 영아인구비율 여성인구비율 , ///
trunit(16) trperiod(2015) fig keep(그림1.dta,replace)

use 그림1.dta, clear
replace _Y_treated =  _Y_treated/100000
replace _Y_synthetic = _Y_synthetic/100000

twoway (line _Y_treated _time, lcolor(black)) (line _Y_synthetic _time, lpattern(shortdash) lcolor(gray)), ///
graphregion(color(white)) ///
xline(2014, lpattern(dash) lcolor(blue)) ///
text(10000 2012.7 "Election", color(blue)) ///
xline(2015, lpattern(dash) lcolor(red)) ///
text(10000 2016 "Effect", color(red)) ///
xtitle("Year", margin(small)) ///
ytitle("General Accounting Budget", margin(small)) ///
ylabel(,format(%10.0f)) ///
legend(order(1 "Suncheon" 2 "Synthetic")) ///
note("Note: The unit of general accounting budget is a hundred million KRW.") 


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
* Donor Pool 전남 한정
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
keep if id>=14

synth 일반회계 일반회계(2001) 일반회계(2005) 일반회계(2009) 일반회계(2013) 일반회계(2001(1)2014) 일반회계(2008(1)2012)  일반회계(2012(1)2014) ///
재정자립도 일인당일반회계 일인당자주재원 일인당국고보조금 일인당GRDP 노인인구비율 영아인구비율 여성인구비율 , ///
trunit(16) trperiod(2015) fig keep(그림1.dta,replace)

use 그림1.dta, clear
replace _Y_treated =  _Y_treated/100000
replace _Y_synthetic = _Y_synthetic/100000

twoway (line _Y_treated _time, lcolor(black)) (line _Y_synthetic _time, lpattern(shortdash) lcolor(gray)), ///
graphregion(color(white)) ///
xline(2014, lpattern(dash) lcolor(blue)) ///
text(10000 2012.7 "Election", color(blue)) ///
xline(2015, lpattern(dash) lcolor(red)) ///
text(10000 2016 "Effect", color(red)) ///
xtitle("Year", margin(small)) ///
ytitle("General Accounting Budget", margin(small)) ///
ylabel(,format(%10.0f)) ///
legend(order(1 "Suncheon" 2 "Synthetic")) ///
note("Note: The unit of general accounting budget is a hundred million KRW.") 


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
* Multiple Treatment / https://github.com/bquistorff/synth_runner
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
gen byte D = (gun==36030 & year>=2015) | (gun==36320 & year>=2015 & year<=2016)

synth_runner 일반회계 일반회계(2001) 일반회계(2005) 일반회계(2009) 일반회계(2001(1)2014) 일반회계(2008(1)2012) 일반회계(2012(1)2014) ///
재정자립도 일인당일반회계 일인당자주재원 일인당국고보조금 일인당GRDP 노인인구비율 영아인구비율 여성인구비율 , ///
d(D) trends gen_vars effect_graphs 


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
* Placebo Test
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
forval i=1/35{
qui synth 일반회계 일반회계(2001) 일반회계(2005) 일반회계(2009) 일반회계(2013) 일반회계(2001(1)2014) 일반회계(2008(1)2012)  일반회계(2012(1)2014) ///
재정자립도 일인당일반회계 일인당자주재원 일인당국고보조금 일인당GRDP 노인인구비율 영아인구비율 여성인구비율 , ///
trunit(`i') trperiod(2015) keep(synth_`i', replace)
}

forval i=1/35{
use synth_`i', clear
rename _time years
gen tr_effect_`i' = _Y_treated - _Y_synthetic
keep years tr_effect_`i'
drop if missing(years)
save synth_`i', replace
}


&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
* Difference-in-difference (Alternative Specification)
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
* 일반회계, 국고보조금, 특별교부세 활용 (2008~2019)
keep if year>2007

replace 일반회계=일반회계/100000
replace 보조사업=보조사업/100000
replace 국고보조금=국고보조금/100000
replace 특별교부세=특별교부세/100000

diff 일반회계, p(처치기간) t(처치시군) cl(id)
diff 일반회계, p(처치기간) t(처치시군) cl(id) cov(재정자립도 일인당일반회계 일인당자주재원 일인당GRDP 노인인구비율 영아인구비율 여성인구비율)

diff 보조사업, p(처치기간) t(처치시군) cl(id)
diff 보조사업, p(처치기간) t(처치시군) cl(id) cov(재정자립도 일인당일반회계 일인당자주재원 일인당GRDP 노인인구비율 영아인구비율 여성인구비율)

diff 국고보조금, p(처치기간) t(처치시군) cl(id)
diff 국고보조금, p(처치기간) t(처치시군) cl(id) cov(재정자립도 일인당일반회계 일인당자주재원 일인당GRDP 노인인구비율 영아인구비율 여성인구비율)

diff 특별교부세, p(처치기간) t(처치시군) cl(id)
diff 특별교부세, p(처치기간) t(처치시군) cl(id) cov(재정자립도 일인당일반회계 일인당자주재원 일인당GRDP 노인인구비율 영아인구비율 여성인구비율)